$adat){ if($id == 'attributes'){ continue; } $prefix = ""; $suffix = ""; $ids = ""; $style = ""; $class = ""; $attr = ""; if(isset($adat['class'])){ $class = "class='".$adat['class']."'"; } if(isset($adat['maxlength'])){ $attr.= " maxlength='".$adat['maxlength']."' "; } if(isset($adat['id'])){ $ids = "id='".$adat['id']."'"; } if(isset($adat['style'])){ $style = "style='".$adat['style']."'"; } if(isset($adat['prefix'])){ $prefix = $adat['prefix'].""; } if(isset($adat['suffix'])){ $suffix = $adat['suffix'].""; } if($adat['attr']){ $attribute = ''; foreach($adat['attr'] as $k=>$v){ $attribute.= $k.="='".$v."'"; } }else{ $attribute = ''; } switch($adat['type']){ case'text': $element[$id]->value =""; break; case'file': $element[$id]->value =""; break; case'password': $element[$id]->value =""; break; case'hidden': $element[$id]->value =""; break; case'item': $element[$id]->value =$adat['value']; break; case'textarea': $element[$id]->value =""; break; case'checkbox': $element[$id]->value =""; break; case'editor': add_js("/includes/ckeditor/ckeditor.js"); add_head_script(' '); $adat['label'] = $adat['label']; $element[$id]->value =""; break; case'submit': $element[$id]->value =""; break; case'button': $element[$id]->value ="";; break; case'select': $element[$id]->value =""; break; } if($prefix){ $element[$id]->prefix = $prefix; } if($suffix){ $element[$id]->suffix = $suffix; } $element[$id]->label =(isset($adat['label'])?$adat['label'].($adat['kotelezo']?'*':''):''); if($adat['syntax'] == "off"){ $element[$id]->syntax = "off"; }else{ $element[$id]->syntax = "on"; } if($adat['no_label']){ $element[$id]->no_label = "on"; }else{ $element[$id]->no_label = "off"; } if(isset($adat['description'])){ $element[$id]->value = $element[$id]->value; $element[$id]->description = "".$adat['description'].""; }else{ $element[$id]->value = $element[$id]->value; } } } return $element; } function html_form($html_form){ $head = ''; if($html_form['form_attributes']){ foreach($html_form['form_attributes'] as $k=>$v){ $head.=$k.'="'.$v.'" '; } } $return = '
'; foreach($html_form as $k=>$v){ if($v->syntax == "on"){ $return.= $v->prefix.($v->no_label=="on"?"
":"
").$v->value; if(isset($v->description)){ $return.=$v->description; } $return.="
".$v->suffix; }else{ $return.=$v->value; } } $return.="
"; return $return; } function form_validate($form = ''){ $error = ''; $mezok = array(); $mezok_retype = array(); if($form){ foreach($form AS $id => $adat){ if(isset($adat['kotelezo'])){ if(!isset($_POST[$id]) or !$_POST[$id]){ $mezok[$adat['name']] = "".$adat['label'].""; $error = 1; } } if(isset($adat['retype'])){ if($_POST[$adat['retype']]!=$_POST[$id]){ $mezok_retype[] = "".$adat['label']." ".t("nem egyenlő ezzel:")." ".$form[$adat['retype']]['label'].""; $error = 1; } } if(isset($adat['is_email']) and $_POST[$id]){ $pattern = '/^([a-z0-9])(([-a-z0-9._])*([a-z0-9]))*\@([a-z0-9])' . '(([a-z0-9-])*([a-z0-9]))+' . '(\.([a-z0-9])([-a-z0-9_-])?([a-z0-9])+)+$/i'; if(preg_match($pattern,$_POST[$id])) { }else{ $mezok[$adat['name']] = "".$adat['label'].""; $error = 1; } } if(isset($adat['is_int'])){ if(is_numeric($_POST[$id])) { }else{ $mezok[$adat['name']] = "".$adat['label'].""; $error = 1; } } } if($error){ if($mezok){ system_add_print_log(t("Ellenőrizze a következő mezőket:")." ".implode(", ",$mezok).""); } if($mezok_retype){ system_add_print_log(" ".implode(", ",$mezok_retype).""); } return false; }else{ return true; } } } ?>subject módon * @param string $uzenet Ez tartalmazza az üzenetet. Ha indításkor nincs megadva, akkor később kell megadni $mailer->uzenet módon * @param string $style Ez tartalmazza az üzenet stílusát. Ha indításkor nincs megadva, akkor később kell megadni $mailer->style módon */ function __construct($subject = '', $uzenet = '', $style = '' ){ if($subject != ''){ $this->subject = $subject; } if($uzenet != ''){ $this->uzenet = $uzenet; } if($style != ''){ $this->style = $style; } $this->mail_cache = false; $this->mail_trace = false; $this->felado_nev = RENDSZER_EMAIL_NEV; $this->felado_email = RENDSZER_EMAIL_CIM; $this->boundary(5); } /** * @desc * @version * @author james // queensite */ private function boundary($number = ''){ $this->tmp = explode("@", $this->felado_email); $this->boundary = $this->tmp[0]."-".md5(time()); $this->boundary2 = $this->tmp[0]."-".md5(time()); } /** * @desc * @version * @author james // queensite */ public function message_processor(){ $this->subject = "=?UTF-8?B?".base64_encode($this->subject)."?="; $this->head(); if(count($this->personal_elements)){ foreach($this->personal_elements AS $index => $element){ $this->personal_elements[$index] = '['.$element.']'; } } $this->uzenet = str_replace($this->personal_elements, $this->personal_array, $this->uzenet); if(count($this->attached_images)){ foreach($this->attached_images AS $index => $image){ $this->uzenet = str_replace($image, 'cid:image'.$index, $this->uzenet); } } } /** * @desc * @version * @author james // queensite */ public function send($cimzett = ''){ if($this->mail_trace == true){ $this->store_mail(); $this->trace(); //$this->message = str_replace('{trace_track}', 'email_id.'\" alt=\"\" width=\"1\" height=\"1\" />', $this->message); } /* mail("kruskaroland@gmail.com", "TESZT", "TESZT", "From: SMTP <".$this->felado_email.">" ."\r\n". "CC: Teszt " ."\r\n". "BCC: Teszt2 " ."\r\n". "Reply-To: Teszt3 " ."\r\n" );*/ if( mail($this->cimzett, $this->subject, $this->message,"From: ".$this->felado_nev." <".$this->felado_email.">"."\r\n". $this->header) ) { $this->success++; } else { $this->fail++; } } /** * @desc * @version * @author james // queensite */ private function store_mail(){ unset($this->email_id); $db = new Dbase('insert', 'email_cache'); $db->elemek = array( 'cimzett' => $this->cimzett, 'subject' => $this->subject, 'message' => $this->message, ); $db->sql(); $this->email_id = $db->id; } /** * @desc * @version * @author james // queensite */ private function trace(){ $db = new Dbase('insert', 'email_statusz'); $db->elemek = array('email_id' => $this->email_id); $db->sql(); } /** * @desc * @version * @author james // queensite */ public function header(){ if(!$this->reply_email){ $this->reply_email = $this->felado_email; } $this->header = "From: \"=?UTF-8?B?".base64_encode($this->felado_nev)."?=\" <".$this->felado_email."> Date: ".date('r')." Reply-To: ".$this->reply_email." Message-ID: <".$this->boundary."_".$this->felado_email."> MIME-Version: 1.0 Content-Type: multipart/related; boundary=\"==".$this->boundary."\" This is a MIME message. If you are reading this text, you might want to consider changing to a mail reader that understands how to properly display MIME multipart messages. --==".$this->boundary." Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: 8bit "; } /** * @desc * @version * @author james // queensite */ public function body(){} /** * @desc * @version * @author james // queensite */ private function head(){ if($this->style){ $style = file_get_contents($this->style); } $this->head = ' '.$this->subject.' '; } /** * @desc * @version * @author james // queensite */ public function message(){ global $host_name; if($this->sablon == "yes"){ $this->message .= " ".$this->head."
".$this->uzenet."
\r\n"; }else{ $this->message .= " ".$this->head." ".$this->uzenet." \r\n"; } if(count($this->attached_images)){ foreach ($this->attached_images AS $index => $image){ $filename = explode ("/",$image); $filename = $filename[count($filename)-1]; $data = chunk_split(base64_encode(file_get_contents($image))); $this->message .= ' --=='.$this->boundary.' Content-Type: image/jpeg Content-ID: Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="'.$filename.'" '.$data; } } /** * @desc html rész */ $html_message = explode('.', strip_tags($this->uzenet)); $html_message = implode('.\r\n', $html_message); $this->message .= ' --=='.$this->boundary.'-- '; } } ?>